/*******************************************************************************
 * Copyright (c) 2021 Contributors to the Eclipse Foundation
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License 2.0 which is available at
 * https://www.eclipse.org/legal/epl-2.0/.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *   See git history
 *******************************************************************************/
/* Generated By:JavaCC: Do not edit this line. CssParserTokenManager.java */
package org.eclipse.birt.report.engine.executor.css;

public class CssParserTokenManager implements CssParserConstants {
	public java.io.PrintStream debugStream = System.out;

	public void setDebugStream(java.io.PrintStream ds) {
		debugStream = ds;
	}

	private final int jjStopStringLiteralDfa_0(int pos, long active0, long active1) {
		switch (pos) {
		case 0:
			if ((active0 & 0x2000000000000000L) != 0L || (active1 & 0xfeL) != 0L) {
				jjmatchedKind = 76;
				return 510;
			}
			if ((active0 & 0x100000000000000L) != 0L) {
				jjmatchedKind = 76;
				return 370;
			}
			if ((active0 & 0x40000000000000L) != 0L) {
				jjmatchedKind = 76;
				return 401;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				return 298;
			}
			if ((active0 & 0x80000000000000L) != 0L) {
				jjmatchedKind = 76;
				return 360;
			}
			if ((active1 & 0x800L) != 0L) {
				jjmatchedKind = 76;
				return 36;
			}
			if ((active1 & 0x400L) != 0L) {
				jjmatchedKind = 76;
				return 380;
			}
			if ((active0 & 0x4L) != 0L) {
				jjmatchedKind = 29;
				return 450;
			}
			if ((active0 & 0x800000L) != 0L) {
				return 662;
			}
			return -1;
		case 1:
			if ((active0 & 0x40000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 1;
				return 412;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 1;
				return 297;
			}
			if ((active0 & 0x2180000000000000L) != 0L || (active1 & 0x800L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 1;
				return 663;
			}
			if ((active1 & 0xfeL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 1;
				return 514;
			}
			if ((active1 & 0x400L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 1;
				return 379;
			}
			if ((active0 & 0x4L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 1;
				return 458;
			}
			return -1;
		case 2:
			if ((active1 & 0x400L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 2;
				return 378;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 2;
				return 296;
			}
			if ((active0 & 0x21c0000000000004L) != 0L || (active1 & 0x8feL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 2;
				return 663;
			}
			return -1;
		case 3:
			if ((active0 & 0x180000000000000L) != 0L) {
				return 663;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 3;
				return 301;
			}
			if ((active0 & 0x2040000000000004L) != 0L || (active1 & 0xcfeL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 3;
				return 663;
			}
			return -1;
		case 4:
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 51;
				jjmatchedPos = 4;
				return 300;
			}
			if ((active0 & 0x2040000000000004L) != 0L || (active1 & 0xcfeL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 4;
				return 663;
			}
			return -1;
		case 5:
			if ((active0 & 0x40000000000000L) != 0L || (active1 & 0x4feL) != 0L) {
				return 663;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				if (jjmatchedPos != 5) {
					jjmatchedKind = 76;
					jjmatchedPos = 5;
				}
				return 316;
			}
			if ((active0 & 0x2000000000000004L) != 0L || (active1 & 0x800L) != 0L) {
				if (jjmatchedPos != 5) {
					jjmatchedKind = 76;
					jjmatchedPos = 5;
				}
				return 663;
			}
			return -1;
		case 6:
			if ((active0 & 0x4L) != 0L || (active1 & 0x800L) != 0L) {
				return 663;
			}
			if ((active0 & 0x2000000000000000L) != 0L || (active1 & 0xfcL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 6;
				return 663;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 6;
				return 315;
			}
			return -1;
		case 7:
			if ((active0 & 0x2000000000000000L) != 0L || (active1 & 0xfcL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 7;
				return 663;
			}
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 7;
				return 314;
			}
			return -1;
		case 8:
			if ((active0 & 0x800000000000000L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 8;
				return 313;
			}
			if ((active0 & 0x2000000000000000L) != 0L || (active1 & 0xfcL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 8;
				return 663;
			}
			return -1;
		case 9:
			if ((active0 & 0x2800000000000000L) != 0L || (active1 & 0x10L) != 0L) {
				return 663;
			}
			if ((active1 & 0xecL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 9;
				return 663;
			}
			return -1;
		case 10:
			if ((active1 & 0x80L) != 0L) {
				return 663;
			}
			if ((active1 & 0x6cL) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 10;
				return 663;
			}
			return -1;
		case 11:
			if ((active1 & 0x2cL) != 0L) {
				return 663;
			}
			if ((active1 & 0x40L) != 0L) {
				jjmatchedKind = 76;
				jjmatchedPos = 11;
				return 663;
			}
			return -1;
		default:
			return -1;
		}
	}

	private final int jjStartNfa_0(int pos, long active0, long active1) {
		return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1), pos + 1);
	}

	private final int jjStopAtPos(int pos, int kind) {
		jjmatchedKind = kind;
		jjmatchedPos = pos;
		return pos + 1;
	}

	private final int jjStartNfaWithStates_0(int pos, int kind, int state) {
		jjmatchedKind = kind;
		jjmatchedPos = pos;
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			return pos + 1;
		}
		return jjMoveNfa_0(state, pos + 1);
	}

	private final int jjMoveStringLiteralDfa0_0() {
		switch (curChar) {
		case 36:
			return jjMoveStringLiteralDfa1_0(0x400L, 0x0L);
		case 40:
			return jjStopAtPos(0, 25);
		case 41:
			return jjStopAtPos(0, 24);
		case 42:
			jjmatchedKind = 22;
			return jjMoveStringLiteralDfa1_0(0x800L, 0x0L);
		case 43:
			return jjStopAtPos(0, 14);
		case 44:
			return jjStopAtPos(0, 16);
		case 45:
			jjmatchedKind = 15;
			return jjMoveStringLiteralDfa1_0(0x10L, 0x0L);
		case 46:
			return jjStartNfaWithStates_0(0, 23, 662);
		case 47:
			return jjStopAtPos(0, 19);
		case 58:
			return jjStopAtPos(0, 26);
		case 59:
			return jjStopAtPos(0, 17);
		case 60:
			return jjMoveStringLiteralDfa1_0(0x8L, 0x0L);
		case 61:
			return jjStopAtPos(0, 13);
		case 62:
			return jjStopAtPos(0, 18);
		case 91:
			return jjStopAtPos(0, 20);
		case 93:
			return jjStopAtPos(0, 21);
		case 94:
			return jjMoveStringLiteralDfa1_0(0x200L, 0x0L);
		case 65:
		case 97:
			return jjMoveStringLiteralDfa1_0(0x80000000000000L, 0x0L);
		case 66:
		case 98:
			return jjMoveStringLiteralDfa1_0(0x2000000000000000L, 0xfeL);
		case 70:
		case 102:
			return jjMoveStringLiteralDfa1_0(0x100000000000000L, 0x0L);
		case 73:
		case 105:
			return jjMoveStringLiteralDfa1_0(0x4L, 0x0L);
		case 77:
		case 109:
			return jjMoveStringLiteralDfa1_0(0x0L, 0x400L);
		case 78:
		case 110:
			return jjMoveStringLiteralDfa1_0(0x40000000000000L, 0x0L);
		case 80:
		case 112:
			return jjMoveStringLiteralDfa1_0(0x0L, 0x800L);
		case 83:
		case 115:
			return jjMoveStringLiteralDfa1_0(0x800000000000000L, 0x0L);
		case 123:
			return jjStopAtPos(0, 5);
		case 124:
			return jjMoveStringLiteralDfa1_0(0x80L, 0x0L);
		case 125:
			return jjStopAtPos(0, 6);
		case 126:
			jjmatchedKind = 12;
			return jjMoveStringLiteralDfa1_0(0x100L, 0x0L);
		default:
			return jjMoveNfa_0(1, 0);
		}
	}

	private final int jjMoveStringLiteralDfa1_0(long active0, long active1) {
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(0, active0, active1);
			return 1;
		}
		switch (curChar) {
		case 33:
			return jjMoveStringLiteralDfa2_0(active0, 0x8L, active1, 0L);
		case 45:
			return jjMoveStringLiteralDfa2_0(active0, 0x10L, active1, 0L);
		case 61:
			if ((active0 & 0x80L) != 0L) {
				return jjStopAtPos(1, 7);
			} else if ((active0 & 0x100L) != 0L) {
				return jjStopAtPos(1, 8);
			} else if ((active0 & 0x200L) != 0L) {
				return jjStopAtPos(1, 9);
			} else if ((active0 & 0x400L) != 0L) {
				return jjStopAtPos(1, 10);
			} else if ((active0 & 0x800L) != 0L) {
				return jjStopAtPos(1, 11);
			}
			break;
		case 65:
		case 97:
			return jjMoveStringLiteralDfa2_0(active0, 0x2000000000000000L, active1, 0xc00L);
		case 77:
		case 109:
			return jjMoveStringLiteralDfa2_0(active0, 0x800000000000000L, active1, 0L);
		case 78:
		case 110:
			return jjMoveStringLiteralDfa2_0(active0, 0x4L, active1, 0L);
		case 79:
		case 111:
			return jjMoveStringLiteralDfa2_0(active0, 0x140000000000000L, active1, 0xfeL);
		case 85:
		case 117:
			return jjMoveStringLiteralDfa2_0(active0, 0x80000000000000L, active1, 0L);
		default:
			break;
		}
		return jjStartNfa_0(0, active0, active1);
	}

	private final int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(0, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(1, active0, active1);
			return 2;
		}
		switch (curChar) {
		case 45:
			return jjMoveStringLiteralDfa3_0(active0, 0x8L, active1, 0L);
		case 62:
			if ((active0 & 0x10L) != 0L) {
				return jjStopAtPos(2, 4);
			}
			break;
		case 65:
		case 97:
			return jjMoveStringLiteralDfa3_0(active0, 0x800000000000000L, active1, 0L);
		case 67:
		case 99:
			return jjMoveStringLiteralDfa3_0(active0, 0x2000000000000000L, active1, 0L);
		case 68:
		case 100:
			return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x800L);
		case 72:
		case 104:
			return jjMoveStringLiteralDfa3_0(active0, 0x4L, active1, 0L);
		case 78:
		case 110:
			return jjMoveStringLiteralDfa3_0(active0, 0x100000000000000L, active1, 0L);
		case 82:
		case 114:
			return jjMoveStringLiteralDfa3_0(active0, 0x40000000000000L, active1, 0x4feL);
		case 84:
		case 116:
			return jjMoveStringLiteralDfa3_0(active0, 0x80000000000000L, active1, 0L);
		default:
			break;
		}
		return jjStartNfa_0(1, active0, active1);
	}

	private final int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(1, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(2, active0, active1);
			return 3;
		}
		switch (curChar) {
		case 45:
			if ((active0 & 0x8L) != 0L) {
				return jjStopAtPos(3, 3);
			}
			break;
		case 68:
		case 100:
			return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x8feL);
		case 69:
		case 101:
			return jjMoveStringLiteralDfa4_0(active0, 0x4L, active1, 0L);
		case 71:
		case 103:
			return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x400L);
		case 75:
		case 107:
			return jjMoveStringLiteralDfa4_0(active0, 0x2000000000000000L, active1, 0L);
		case 76:
		case 108:
			return jjMoveStringLiteralDfa4_0(active0, 0x800000000000000L, active1, 0L);
		case 77:
		case 109:
			return jjMoveStringLiteralDfa4_0(active0, 0x40000000000000L, active1, 0L);
		case 79:
		case 111:
			if ((active0 & 0x80000000000000L) != 0L) {
				return jjStartNfaWithStates_0(3, 55, 663);
			}
			break;
		case 84:
		case 116:
			if ((active0 & 0x100000000000000L) != 0L) {
				return jjStartNfaWithStates_0(3, 56, 663);
			}
			break;
		default:
			break;
		}
		return jjStartNfa_0(2, active0, active1);
	}

	private final int jjMoveStringLiteralDfa4_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(2, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(3, active0, active1);
			return 4;
		}
		switch (curChar) {
		case 65:
		case 97:
			return jjMoveStringLiteralDfa5_0(active0, 0x40000000000000L, active1, 0L);
		case 69:
		case 101:
			return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0xfeL);
		case 71:
		case 103:
			return jjMoveStringLiteralDfa5_0(active0, 0x2000000000000000L, active1, 0L);
		case 73:
		case 105:
			return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0xc00L);
		case 76:
		case 108:
			return jjMoveStringLiteralDfa5_0(active0, 0x800000000000000L, active1, 0L);
		case 82:
		case 114:
			return jjMoveStringLiteralDfa5_0(active0, 0x4L, active1, 0L);
		default:
			break;
		}
		return jjStartNfa_0(3, active0, active1);
	}

	private final int jjMoveStringLiteralDfa5_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(3, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(4, active0, active1);
			return 5;
		}
		switch (curChar) {
		case 45:
			return jjMoveStringLiteralDfa6_0(active0, 0x800000000000000L, active1, 0L);
		case 73:
		case 105:
			return jjMoveStringLiteralDfa6_0(active0, 0x4L, active1, 0L);
		case 76:
		case 108:
			if ((active0 & 0x40000000000000L) != 0L) {
				return jjStartNfaWithStates_0(5, 54, 663);
			}
			break;
		case 78:
		case 110:
			if ((active1 & 0x400L) != 0L) {
				return jjStartNfaWithStates_0(5, 74, 663);
			}
			return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x800L);
		case 82:
		case 114:
			if ((active1 & 0x2L) != 0L) {
				jjmatchedKind = 65;
				jjmatchedPos = 5;
			}
			return jjMoveStringLiteralDfa6_0(active0, 0x2000000000000000L, active1, 0xfcL);
		default:
			break;
		}
		return jjStartNfa_0(4, active0, active1);
	}

	private final int jjMoveStringLiteralDfa6_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(4, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(5, active0, active1);
			return 6;
		}
		switch (curChar) {
		case 45:
			return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0xfcL);
		case 67:
		case 99:
			return jjMoveStringLiteralDfa7_0(active0, 0x800000000000000L, active1, 0L);
		case 71:
		case 103:
			if ((active1 & 0x800L) != 0L) {
				return jjStartNfaWithStates_0(6, 75, 663);
			}
			break;
		case 79:
		case 111:
			return jjMoveStringLiteralDfa7_0(active0, 0x2000000000000000L, active1, 0L);
		case 84:
		case 116:
			if ((active0 & 0x4L) != 0L) {
				return jjStartNfaWithStates_0(6, 2, 663);
			}
			break;
		default:
			break;
		}
		return jjStartNfa_0(5, active0, active1);
	}

	private final int jjMoveStringLiteralDfa7_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(5, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(6, active0, active1);
			return 7;
		}
		switch (curChar) {
		case 65:
		case 97:
			return jjMoveStringLiteralDfa8_0(active0, 0x800000000000000L, active1, 0L);
		case 66:
		case 98:
			return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x40L);
		case 76:
		case 108:
			return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x80L);
		case 82:
		case 114:
			return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x20L);
		case 83:
		case 115:
			return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x8L);
		case 84:
		case 116:
			return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x10L);
		case 85:
		case 117:
			return jjMoveStringLiteralDfa8_0(active0, 0x2000000000000000L, active1, 0L);
		case 87:
		case 119:
			return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x4L);
		default:
			break;
		}
		return jjStartNfa_0(6, active0, active1);
	}

	private final int jjMoveStringLiteralDfa8_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(6, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(7, active0, active1);
			return 8;
		}
		switch (curChar) {
		case 69:
		case 101:
			return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x80L);
		case 73:
		case 105:
			return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x24L);
		case 78:
		case 110:
			return jjMoveStringLiteralDfa9_0(active0, 0x2000000000000000L, active1, 0L);
		case 79:
		case 111:
			return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x50L);
		case 80:
		case 112:
			return jjMoveStringLiteralDfa9_0(active0, 0x800000000000000L, active1, 0L);
		case 84:
		case 116:
			return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x8L);
		default:
			break;
		}
		return jjStartNfa_0(7, active0, active1);
	}

	private final int jjMoveStringLiteralDfa9_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(7, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(8, active0, active1);
			return 9;
		}
		switch (curChar) {
		case 68:
		case 100:
			if ((active0 & 0x2000000000000000L) != 0L) {
				return jjStartNfaWithStates_0(9, 61, 663);
			}
			return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0x4L);
		case 70:
		case 102:
			return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0x80L);
		case 71:
		case 103:
			return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0x20L);
		case 80:
		case 112:
			if ((active1 & 0x10L) != 0L) {
				return jjStartNfaWithStates_0(9, 68, 663);
			}
			break;
		case 83:
		case 115:
			if ((active0 & 0x800000000000000L) != 0L) {
				return jjStartNfaWithStates_0(9, 59, 663);
			}
			break;
		case 84:
		case 116:
			return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0x40L);
		case 89:
		case 121:
			return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0x8L);
		default:
			break;
		}
		return jjStartNfa_0(8, active0, active1);
	}

	private final int jjMoveStringLiteralDfa10_0(long old0, long active0, long old1, long active1) {
		active0 &= old0;
		if ((active0 | (active1 &= old1)) == 0L) {
			return jjStartNfa_0(8, old0, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(9, 0L, active1);
			return 10;
		}
		switch (curChar) {
		case 72:
		case 104:
			return jjMoveStringLiteralDfa11_0(active1, 0x20L);
		case 76:
		case 108:
			return jjMoveStringLiteralDfa11_0(active1, 0x8L);
		case 84:
		case 116:
			if ((active1 & 0x80L) != 0L) {
				return jjStartNfaWithStates_0(10, 71, 663);
			}
			return jjMoveStringLiteralDfa11_0(active1, 0x44L);
		default:
			break;
		}
		return jjStartNfa_0(9, 0L, active1);
	}

	private final int jjMoveStringLiteralDfa11_0(long old1, long active1) {
		active1 &= old1;
		if (active1 == 0L) {
			return jjStartNfa_0(9, 0L, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(10, 0L, active1);
			return 11;
		}
		switch (curChar) {
		case 69:
		case 101:
			if ((active1 & 0x8L) != 0L) {
				return jjStartNfaWithStates_0(11, 67, 663);
			}
			break;
		case 72:
		case 104:
			if ((active1 & 0x4L) != 0L) {
				return jjStartNfaWithStates_0(11, 66, 663);
			}
			break;
		case 79:
		case 111:
			return jjMoveStringLiteralDfa12_0(active1, 0x40L);
		case 84:
		case 116:
			if ((active1 & 0x20L) != 0L) {
				return jjStartNfaWithStates_0(11, 69, 663);
			}
			break;
		default:
			break;
		}
		return jjStartNfa_0(10, 0L, active1);
	}

	private final int jjMoveStringLiteralDfa12_0(long old1, long active1) {
		active1 &= old1;
		if (active1 == 0L) {
			return jjStartNfa_0(10, 0L, old1);
		}
		try {
			curChar = input_stream.readChar();
		} catch (java.io.IOException e) {
			jjStopStringLiteralDfa_0(11, 0L, active1);
			return 12;
		}
		switch (curChar) {
		case 77:
		case 109:
			if ((active1 & 0x40L) != 0L) {
				return jjStartNfaWithStates_0(12, 70, 663);
			}
			break;
		default:
			break;
		}
		return jjStartNfa_0(11, 0L, active1);
	}

	private final void jjCheckNAdd(int state) {
		if (jjrounds[state] != jjround) {
			jjstateSet[jjnewStateCnt++] = state;
			jjrounds[state] = jjround;
		}
	}

	private final void jjAddStates(int start, int end) {
		do {
			jjstateSet[jjnewStateCnt++] = jjnextStates[start];
		} while (start++ != end);
	}

	private final void jjCheckNAddTwoStates(int state1, int state2) {
		jjCheckNAdd(state1);
		jjCheckNAdd(state2);
	}

	private final void jjCheckNAddStates(int start, int end) {
		do {
			jjCheckNAdd(jjnextStates[start]);
		} while (start++ != end);
	}

//private final void jjCheckNAddStates(int start)
//{
//   jjCheckNAdd(jjnextStates[start]);
//   jjCheckNAdd(jjnextStates[start + 1]);
//}
	static final long[] jjbitVec0 = { 0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL,
			0xffffffffffffffffL };
	static final long[] jjbitVec2 = { 0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL };

	private final int jjMoveNfa_0(int startState, int curPos) {
		// int[] nextStates;
		int startsAt = 0;
		jjnewStateCnt = 662;
		int i = 1;
		jjstateSet[0] = startState;
		// int j;
		int kind = 0x7fffffff;
		for (;;) {
			if (++jjround == 0x7fffffff) {
				ReInitRounds();
			}
			if (curChar < 64) {
				long l = 1L << curChar;
				// MatchLoop: do
				do {
					switch (jjstateSet[--i]) {
					case 36:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 315:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 458:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 379:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 298:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 450:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 412:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 411;
						}
						break;
					case 313:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 370:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 316:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 360:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 296:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 662:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(3, 5);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(171, 172);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(164, 165);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(161, 163);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(158, 160);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(156, 157);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(153, 155);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(6, 9);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(140, 142);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(137, 139);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(134, 136);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(131, 133);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(128, 130);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(125, 127);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(123, 124);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(120, 122);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(117, 119);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(115, 116);
						}
						if ((0x3ff000000000000L & l) != 0L) {
							if (kind > 39) {
								kind = 39;
							}
							jjCheckNAdd(114);
						}
						break;
					case 380:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 510:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 297:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 514:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 300:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 316;
						}
						break;
					case 314:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 301:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 1:
						if ((0x3ff000000000000L & l) != 0L) {
							if (kind > 39) {
								kind = 39;
							}
							jjCheckNAddStates(10, 87);
						} else if ((0x100003600L & l) != 0L) {
							if (kind > 1) {
								kind = 1;
							}
							jjCheckNAdd(0);
						} else if (curChar == 35) {
							jjCheckNAddStates(88, 91);
						} else if (curChar == 46) {
							jjCheckNAddStates(92, 110);
						} else if (curChar == 39) {
							jjCheckNAddStates(111, 114);
						} else if (curChar == 34) {
							jjCheckNAddStates(115, 118);
						}
						if (curChar == 57) {
							jjstateSet[jjnewStateCnt++] = 65;
						} else if (curChar == 56) {
							jjstateSet[jjnewStateCnt++] = 63;
						} else if (curChar == 55) {
							jjstateSet[jjnewStateCnt++] = 61;
						} else if (curChar == 54) {
							jjstateSet[jjnewStateCnt++] = 59;
						} else if (curChar == 53) {
							jjstateSet[jjnewStateCnt++] = 57;
						} else if (curChar == 52) {
							jjstateSet[jjnewStateCnt++] = 55;
						} else if (curChar == 51) {
							jjstateSet[jjnewStateCnt++] = 53;
						} else if (curChar == 50) {
							jjstateSet[jjnewStateCnt++] = 51;
						} else if (curChar == 49) {
							jjstateSet[jjnewStateCnt++] = 49;
						}
						break;
					case 401:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 663:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 378:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 40) {
							if (kind > 89) {
								kind = 89;
							}
						}
						if ((0x3ff200000000000L & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						break;
					case 0:
						if ((0x100003600L & l) == 0L) {
							break;
						}
						if (kind > 1) {
							kind = 1;
						}
						jjCheckNAdd(0);
						break;
					case 2:
						if (curChar == 34) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 3:
						if ((0xfffffffb00000200L & l) != 0L) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 4:
						if (curChar == 34 && kind > 38) {
							kind = 38;
						}
						break;
					case 6:
						if (curChar == 10) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 8:
						if ((0xffffffff00000000L & l) != 0L) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 9:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(119, 124);
						}
						break;
					case 10:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 11:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(125, 133);
						}
						break;
					case 12:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(134, 138);
						}
						break;
					case 13:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(139, 144);
						}
						break;
					case 14:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(145, 151);
						}
						break;
					case 15:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(152, 159);
						}
						break;
					case 16:
						if (curChar == 13) {
							jjstateSet[jjnewStateCnt++] = 6;
						}
						break;
					case 17:
						if (curChar == 39) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 18:
						if ((0xffffff7f00000200L & l) != 0L) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 19:
						if (curChar == 39 && kind > 38) {
							kind = 38;
						}
						break;
					case 21:
						if (curChar == 10) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 23:
						if ((0xffffffff00000000L & l) != 0L) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 24:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(160, 165);
						}
						break;
					case 25:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 26:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(166, 174);
						}
						break;
					case 27:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(175, 179);
						}
						break;
					case 28:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(180, 185);
						}
						break;
					case 29:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(186, 192);
						}
						break;
					case 30:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(193, 200);
						}
						break;
					case 31:
						if (curChar == 13) {
							jjstateSet[jjnewStateCnt++] = 21;
						}
						break;
					case 48:
						if (curChar == 48 && kind > 60) {
							kind = 60;
						}
						break;
					case 49:
					case 51:
					case 53:
					case 55:
					case 57:
					case 59:
					case 61:
					case 63:
					case 65:
						if (curChar == 48) {
							jjCheckNAdd(48);
						}
						break;
					case 50:
						if (curChar == 49) {
							jjstateSet[jjnewStateCnt++] = 49;
						}
						break;
					case 52:
						if (curChar == 50) {
							jjstateSet[jjnewStateCnt++] = 51;
						}
						break;
					case 54:
						if (curChar == 51) {
							jjstateSet[jjnewStateCnt++] = 53;
						}
						break;
					case 56:
						if (curChar == 52) {
							jjstateSet[jjnewStateCnt++] = 55;
						}
						break;
					case 58:
						if (curChar == 53) {
							jjstateSet[jjnewStateCnt++] = 57;
						}
						break;
					case 60:
						if (curChar == 54) {
							jjstateSet[jjnewStateCnt++] = 59;
						}
						break;
					case 62:
						if (curChar == 55) {
							jjstateSet[jjnewStateCnt++] = 61;
						}
						break;
					case 64:
						if (curChar == 56) {
							jjstateSet[jjnewStateCnt++] = 63;
						}
						break;
					case 66:
						if (curChar == 57) {
							jjstateSet[jjnewStateCnt++] = 65;
						}
						break;
					case 94:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 93;
						}
						break;
					case 100:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 99;
						}
						break;
					case 106:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 105;
						}
						break;
					case 111:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 110;
						}
						break;
					case 113:
						if (curChar == 46) {
							jjCheckNAddStates(92, 110);
						}
						break;
					case 114:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 39) {
							kind = 39;
						}
						jjCheckNAdd(114);
						break;
					case 115:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(115, 116);
						}
						break;
					case 116:
						if (curChar == 37 && kind > 42) {
							kind = 42;
						}
						break;
					case 117:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(117, 119);
						}
						break;
					case 120:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(120, 122);
						}
						break;
					case 123:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(123, 124);
						}
						break;
					case 125:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(125, 127);
						}
						break;
					case 128:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(128, 130);
						}
						break;
					case 131:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(131, 133);
						}
						break;
					case 134:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(134, 136);
						}
						break;
					case 137:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(137, 139);
						}
						break;
					case 140:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(140, 142);
						}
						break;
					case 143:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(6, 9);
						}
						break;
					case 153:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(153, 155);
						}
						break;
					case 156:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(156, 157);
						}
						break;
					case 158:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(158, 160);
						}
						break;
					case 161:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(161, 163);
						}
						break;
					case 164:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(164, 165);
						}
						break;
					case 171:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(171, 172);
						}
						break;
					case 172:
						if (curChar == 47) {
							jjCheckNAddTwoStates(173, 181);
						}
						break;
					case 173:
						if (curChar == 46) {
							jjCheckNAdd(174);
						}
						break;
					case 174:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(174, 175);
						}
						break;
					case 175:
						if (curChar == 47) {
							jjCheckNAddTwoStates(176, 178);
						}
						break;
					case 176:
						if (curChar == 46) {
							jjCheckNAdd(177);
						}
						break;
					case 177:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 50) {
							kind = 50;
						}
						jjCheckNAdd(177);
						break;
					case 178:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 50) {
							kind = 50;
						}
						jjCheckNAddStates(201, 203);
						break;
					case 179:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 50) {
							kind = 50;
						}
						jjCheckNAdd(179);
						break;
					case 180:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(180, 176);
						}
						break;
					case 181:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(204, 207);
						}
						break;
					case 182:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(182, 175);
						}
						break;
					case 183:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(183, 173);
						}
						break;
					case 184:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(3, 5);
						}
						break;
					case 186:
						if ((0x3ff200000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddTwoStates(186, 187);
						break;
					case 188:
						if ((0xffffffff00000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddTwoStates(186, 187);
						break;
					case 189:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(208, 211);
						break;
					case 190:
						if ((0x100003600L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddTwoStates(186, 187);
						break;
					case 191:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(212, 218);
						break;
					case 192:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(219, 221);
						break;
					case 193:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(222, 225);
						break;
					case 194:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(226, 230);
						break;
					case 195:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(231, 236);
						break;
					case 197:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(237, 240);
						break;
					case 198:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(241, 247);
						break;
					case 199:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(248, 250);
						break;
					case 200:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(251, 254);
						break;
					case 201:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(255, 259);
						break;
					case 202:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(260, 265);
						break;
					case 204:
						if (curChar == 40) {
							jjCheckNAddStates(266, 271);
						}
						break;
					case 205:
						if ((0xfffffc7a00000000L & l) != 0L) {
							jjCheckNAddStates(272, 275);
						}
						break;
					case 206:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddTwoStates(206, 207);
						}
						break;
					case 207:
						if (curChar == 41 && kind > 41) {
							kind = 41;
						}
						break;
					case 209:
						if ((0xffffffff00000000L & l) != 0L) {
							jjCheckNAddStates(272, 275);
						}
						break;
					case 210:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(276, 280);
						}
						break;
					case 211:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(272, 275);
						}
						break;
					case 212:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(281, 288);
						}
						break;
					case 213:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(289, 292);
						}
						break;
					case 214:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(293, 297);
						}
						break;
					case 215:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(298, 303);
						}
						break;
					case 216:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(304, 310);
						}
						break;
					case 217:
						if (curChar == 39) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 218:
						if ((0xffffff7f00000200L & l) != 0L) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 219:
						if (curChar == 39) {
							jjCheckNAddTwoStates(206, 207);
						}
						break;
					case 221:
						if (curChar == 10) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 223:
						if ((0xffffffff00000000L & l) != 0L) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 224:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(315, 320);
						}
						break;
					case 225:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 226:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(321, 329);
						}
						break;
					case 227:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(330, 334);
						}
						break;
					case 228:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(335, 340);
						}
						break;
					case 229:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(341, 347);
						}
						break;
					case 230:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(348, 355);
						}
						break;
					case 231:
						if (curChar == 13) {
							jjstateSet[jjnewStateCnt++] = 221;
						}
						break;
					case 232:
						if (curChar == 34) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 233:
						if ((0xfffffffb00000200L & l) != 0L) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 234:
						if (curChar == 34) {
							jjCheckNAddTwoStates(206, 207);
						}
						break;
					case 236:
						if (curChar == 10) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 238:
						if ((0xffffffff00000000L & l) != 0L) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 239:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(360, 365);
						}
						break;
					case 240:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 241:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(366, 374);
						}
						break;
					case 242:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(375, 379);
						}
						break;
					case 243:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(380, 385);
						}
						break;
					case 244:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(386, 392);
						}
						break;
					case 245:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(393, 400);
						}
						break;
					case 246:
						if (curChar == 13) {
							jjstateSet[jjnewStateCnt++] = 236;
						}
						break;
					case 247:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(401, 407);
						}
						break;
					case 250:
						if (curChar == 43) {
							jjAddStates(408, 409);
						}
						break;
					case 251:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 252;
						break;
					case 252:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(410, 413);
						break;
					case 253:
						if (curChar == 63 && kind > 88) {
							kind = 88;
						}
						break;
					case 254:
					case 269:
					case 273:
					case 276:
					case 279:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAdd(253);
						break;
					case 255:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddTwoStates(253, 254);
						break;
					case 256:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(414, 416);
						break;
					case 257:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjAddStates(417, 422);
						break;
					case 258:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 259;
						}
						break;
					case 259:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 260;
						}
						break;
					case 260:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAdd(261);
						}
						break;
					case 261:
						if ((0x3ff000000000000L & l) != 0L && kind > 88) {
							kind = 88;
						}
						break;
					case 262:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 263;
						}
						break;
					case 263:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 264;
						}
						break;
					case 264:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 265;
						}
						break;
					case 265:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAdd(253);
						break;
					case 266:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 267;
						}
						break;
					case 267:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 268;
						}
						break;
					case 268:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 269;
						break;
					case 270:
						if ((0x3ff000000000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 271;
						}
						break;
					case 271:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 272;
						break;
					case 272:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddTwoStates(253, 273);
						break;
					case 274:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 275;
						break;
					case 275:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(423, 425);
						break;
					case 277:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddTwoStates(253, 276);
						break;
					case 278:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(426, 429);
						break;
					case 280:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddTwoStates(253, 279);
						break;
					case 281:
						if (curChar != 63) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(430, 432);
						break;
					case 282:
						if (curChar == 43) {
							jjstateSet[jjnewStateCnt++] = 283;
						}
						break;
					case 283:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(284, 290);
						}
						break;
					case 284:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 285;
						}
						break;
					case 285:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 286;
						break;
					case 286:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(433, 436);
						break;
					case 287:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAdd(261);
						break;
					case 288:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddTwoStates(261, 287);
						break;
					case 289:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(437, 439);
						break;
					case 290:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(440, 444);
						}
						break;
					case 291:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAdd(284);
						}
						break;
					case 292:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(291, 284);
						}
						break;
					case 293:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(445, 447);
						}
						break;
					case 294:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(448, 451);
						}
						break;
					case 317:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 316;
						}
						break;
					case 325:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 324;
						}
						break;
					case 387:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 386;
						}
						break;
					case 416:
						if (curChar == 35) {
							jjCheckNAddStates(88, 91);
						}
						break;
					case 417:
						if ((0x3ff200000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddTwoStates(417, 418);
						break;
					case 419:
						if ((0xffffffff00000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddTwoStates(417, 418);
						break;
					case 420:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(452, 455);
						break;
					case 421:
						if ((0x100003600L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddTwoStates(417, 418);
						break;
					case 422:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(456, 462);
						break;
					case 423:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(463, 465);
						break;
					case 424:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(466, 469);
						break;
					case 425:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(470, 474);
						break;
					case 426:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(475, 480);
						break;
					case 427:
						if ((0x3ff200000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddTwoStates(427, 428);
						break;
					case 429:
						if ((0xffffffff00000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddTwoStates(427, 428);
						break;
					case 430:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(481, 484);
						break;
					case 431:
						if ((0x100003600L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddTwoStates(427, 428);
						break;
					case 432:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(485, 491);
						break;
					case 433:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(492, 494);
						break;
					case 434:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(495, 498);
						break;
					case 435:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(499, 503);
						break;
					case 436:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(504, 509);
						break;
					case 529:
						if ((0x100003600L & l) != 0L) {
							jjAddStates(510, 511);
						}
						break;
					case 530:
						if (curChar == 40) {
							jjCheckNAddStates(512, 514);
						}
						break;
					case 531:
						if ((0xfffffdffffffffffL & l) != 0L) {
							jjCheckNAddStates(512, 514);
						}
						break;
					case 532:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddTwoStates(532, 533);
						}
						break;
					case 533:
						if (curChar == 41 && kind > 53) {
							kind = 53;
						}
						break;
					case 540:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 539;
						}
						break;
					case 547:
						if (curChar == 45) {
							jjstateSet[jjnewStateCnt++] = 546;
						}
						break;
					case 570:
						if ((0x3ff200000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddTwoStates(570, 571);
						break;
					case 572:
						if ((0xffffffff00000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddTwoStates(570, 571);
						break;
					case 573:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(515, 518);
						break;
					case 574:
						if ((0x100003600L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddTwoStates(570, 571);
						break;
					case 575:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(519, 525);
						break;
					case 576:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(526, 528);
						break;
					case 577:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(529, 532);
						break;
					case 578:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(533, 537);
						break;
					case 579:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(538, 543);
						break;
					case 580:
						if ((0x3ff200000000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 581:
						if (curChar == 40 && kind > 89) {
							kind = 89;
						}
						break;
					case 583:
						if ((0xffffffff00000000L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 584:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(544, 548);
						}
						break;
					case 585:
						if ((0x100003600L & l) != 0L) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 586:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(549, 556);
						}
						break;
					case 587:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(557, 560);
						}
						break;
					case 588:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(561, 565);
						}
						break;
					case 589:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(566, 571);
						}
						break;
					case 590:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(572, 578);
						}
						break;
					case 592:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(579, 582);
						break;
					case 593:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(583, 589);
						break;
					case 594:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(590, 592);
						break;
					case 595:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(593, 596);
						break;
					case 596:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(597, 601);
						break;
					case 597:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(602, 607);
						break;
					case 598:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(608, 612);
						}
						break;
					case 599:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(613, 620);
						}
						break;
					case 600:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(621, 624);
						}
						break;
					case 601:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(625, 629);
						}
						break;
					case 602:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(630, 635);
						}
						break;
					case 603:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(636, 642);
						}
						break;
					case 604:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 39) {
							kind = 39;
						}
						jjCheckNAddStates(10, 87);
						break;
					case 605:
						if ((0x3ff000000000000L & l) == 0L) {
							break;
						}
						if (kind > 39) {
							kind = 39;
						}
						jjCheckNAdd(605);
						break;
					case 606:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(606, 607);
						}
						break;
					case 607:
						if (curChar == 46) {
							jjCheckNAdd(114);
						}
						break;
					case 608:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(608, 116);
						}
						break;
					case 609:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(609, 610);
						}
						break;
					case 610:
						if (curChar == 46) {
							jjCheckNAdd(115);
						}
						break;
					case 611:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(611, 119);
						}
						break;
					case 612:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(612, 613);
						}
						break;
					case 613:
						if (curChar == 46) {
							jjCheckNAdd(117);
						}
						break;
					case 614:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(614, 122);
						}
						break;
					case 615:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(615, 616);
						}
						break;
					case 616:
						if (curChar == 46) {
							jjCheckNAdd(120);
						}
						break;
					case 617:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(617, 124);
						}
						break;
					case 618:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(618, 619);
						}
						break;
					case 619:
						if (curChar == 46) {
							jjCheckNAdd(123);
						}
						break;
					case 620:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(620, 127);
						}
						break;
					case 621:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(621, 622);
						}
						break;
					case 622:
						if (curChar == 46) {
							jjCheckNAdd(125);
						}
						break;
					case 623:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(623, 130);
						}
						break;
					case 624:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(624, 625);
						}
						break;
					case 625:
						if (curChar == 46) {
							jjCheckNAdd(128);
						}
						break;
					case 626:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(626, 133);
						}
						break;
					case 627:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(627, 628);
						}
						break;
					case 628:
						if (curChar == 46) {
							jjCheckNAdd(131);
						}
						break;
					case 629:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(629, 136);
						}
						break;
					case 630:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(630, 631);
						}
						break;
					case 631:
						if (curChar == 46) {
							jjCheckNAdd(134);
						}
						break;
					case 632:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(632, 139);
						}
						break;
					case 633:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(633, 634);
						}
						break;
					case 634:
						if (curChar == 46) {
							jjCheckNAdd(137);
						}
						break;
					case 635:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(635, 142);
						}
						break;
					case 636:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(636, 637);
						}
						break;
					case 637:
						if (curChar == 46) {
							jjCheckNAdd(140);
						}
						break;
					case 638:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(643, 646);
						}
						break;
					case 639:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(639, 640);
						}
						break;
					case 640:
						if (curChar == 46) {
							jjCheckNAdd(143);
						}
						break;
					case 641:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(641, 155);
						}
						break;
					case 642:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(642, 643);
						}
						break;
					case 643:
						if (curChar == 46) {
							jjCheckNAdd(153);
						}
						break;
					case 644:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(644, 157);
						}
						break;
					case 645:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(645, 646);
						}
						break;
					case 646:
						if (curChar == 46) {
							jjCheckNAdd(156);
						}
						break;
					case 647:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(647, 160);
						}
						break;
					case 648:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(648, 649);
						}
						break;
					case 649:
						if (curChar == 46) {
							jjCheckNAdd(158);
						}
						break;
					case 650:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(650, 163);
						}
						break;
					case 651:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(651, 652);
						}
						break;
					case 652:
						if (curChar == 46) {
							jjCheckNAdd(161);
						}
						break;
					case 653:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(653, 165);
						}
						break;
					case 654:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(654, 655);
						}
						break;
					case 655:
						if (curChar == 46) {
							jjCheckNAdd(164);
						}
						break;
					case 656:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(656, 172);
						}
						break;
					case 657:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(657, 658);
						}
						break;
					case 658:
						if (curChar == 46) {
							jjCheckNAdd(171);
						}
						break;
					case 659:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddStates(647, 649);
						}
						break;
					case 660:
						if ((0x3ff000000000000L & l) != 0L) {
							jjCheckNAddTwoStates(660, 661);
						}
						break;
					case 661:
						if (curChar == 46) {
							jjCheckNAdd(184);
						}
						break;
					default:
						break;
					}
				} while (i != startsAt);
			} else if (curChar < 128) {
				long l = 1L << (curChar & 077);
				// MatchLoop: do
				do {
					switch (jjstateSet[--i]) {
					case 36:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 35;
						}
						break;
					case 315:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 314;
						}
						break;
					case 458:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 457;
						}
						break;
					case 379:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 378;
						}
						break;
					case 298:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 337;
						} else if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 334;
						} else if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 329;
						} else if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 320;
						} else if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 308;
						}
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 303;
						}
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 297;
						}
						break;
					case 450:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 458;
						} else if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 454;
						} else if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 449;
						}
						break;
					case 412:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x400000004000L & l) != 0L) {
							jjCheckNAdd(83);
						} else if ((0x10000000100000L & l) != 0L) {
							if (kind > 28) {
								kind = 28;
							}
						}
						if ((0x10000000100000L & l) != 0L) {
							if (kind > 28) {
								kind = 28;
							}
						}
						break;
					case 313:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 312;
						}
						break;
					case 370:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 373;
						} else if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 369;
						}
						break;
					case 316:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 315;
						}
						break;
					case 360:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x2000000020000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 363;
						} else if ((0x400000004000L & l) != 0L) {
							jjCheckNAdd(359);
						}
						if ((0x400000004000L & l) != 0L) {
							jjCheckNAdd(359);
						}
						break;
					case 296:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 318;
						}
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 301;
						}
						if ((0x100000001000L & l) != 0L) {
							jjCheckNAdd(89);
						}
						break;
					case 380:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 397;
						} else if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 379;
						}
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 392;
						}
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 382;
						}
						break;
					case 510:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 523;
						} else if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 511;
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 518;
						} else if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 509;
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 514;
						}
						break;
					case 297:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 319;
						}
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 302;
						}
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 296;
						}
						break;
					case 514:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 522;
						} else if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 517;
						}
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 513;
						}
						break;
					case 300:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x2000000020L & l) != 0L) {
							jjCheckNAdd(299);
						}
						break;
					case 314:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 313;
						}
						break;
					case 301:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 317;
						}
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 300;
						}
						if ((0x100000001000L & l) != 0L) {
							if (kind > 51) {
								kind = 51;
							}
						}
						break;
					case 1:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddStates(650, 654);
						} else if (curChar == 92) {
							jjCheckNAddStates(655, 658);
						}
						if ((0x20000080200L & l) != 0L) {
							if (kind > 29) {
								kind = 29;
							}
						} else if ((0x8000000080L & l) != 0L) {
							jjAddStates(659, 661);
						} else if ((0x4000000040000L & l) != 0L) {
							jjAddStates(662, 668);
						} else if ((0x400000004L & l) != 0L) {
							jjAddStates(669, 673);
						} else if ((0x10000000100000L & l) != 0L) {
							jjAddStates(674, 678);
						} else if ((0x800000008000L & l) != 0L) {
							jjAddStates(679, 684);
						} else if ((0x800000008L & l) != 0L) {
							jjAddStates(685, 686);
						} else if ((0x400000004000L & l) != 0L) {
							jjAddStates(687, 691);
						} else if ((0x200000002000L & l) != 0L) {
							jjAddStates(692, 695);
						} else if ((0x4000000040L & l) != 0L) {
							jjAddStates(696, 697);
						} else if ((0x200000002L & l) != 0L) {
							jjAddStates(698, 700);
						} else if ((0x100000001000L & l) != 0L) {
							jjAddStates(701, 705);
						} else if ((0x20000000200000L & l) != 0L) {
							jjAddStates(706, 708);
						} else if ((0x100000001000000L & l) != 0L) {
							jjAddStates(709, 712);
						} else if ((0x1000000010L & l) != 0L) {
							jjAddStates(713, 715);
						} else if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 71;
						} else if ((0x200000002000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 46;
						} else if ((0x80000000800000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 40;
						} else if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 36;
						}
						if ((0x20000000200L & l) != 0L) {
							jjAddStates(716, 718);
						} else if ((0x8000000080000L & l) != 0L) {
							jjAddStates(719, 725);
						}
						break;
					case 401:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 414;
						} else if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 404;
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 412;
						}
						if ((0x800000008000L & l) != 0L) {
							jjCheckNAdd(400);
						}
						if ((0x800000008000L & l) != 0L) {
							jjCheckNAdd(400);
						}
						break;
					case 663:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						break;
					case 378:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						if ((0x7fffffe87fffffeL & l) != 0L) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						} else if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 377;
						}
						break;
					case 3:
					case 8:
						if ((0x7fffffffffffffffL & l) != 0L) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 5:
						if (curChar == 92) {
							jjAddStates(726, 727);
						}
						break;
					case 7:
						if (curChar == 92) {
							jjAddStates(728, 729);
						}
						break;
					case 9:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(119, 124);
						}
						break;
					case 11:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(125, 133);
						}
						break;
					case 12:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(134, 138);
						}
						break;
					case 13:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(139, 144);
						}
						break;
					case 14:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(145, 151);
						}
						break;
					case 15:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(152, 159);
						}
						break;
					case 18:
					case 23:
						if ((0x7fffffffffffffffL & l) != 0L) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 20:
						if (curChar == 92) {
							jjAddStates(730, 731);
						}
						break;
					case 22:
						if (curChar == 92) {
							jjAddStates(732, 733);
						}
						break;
					case 24:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(160, 165);
						}
						break;
					case 26:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(166, 174);
						}
						break;
					case 27:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(175, 179);
						}
						break;
					case 28:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(180, 185);
						}
						break;
					case 29:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(186, 192);
						}
						break;
					case 30:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(193, 200);
						}
						break;
					case 32:
						if ((0x2000000020L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 33:
						if ((0x100000001000L & l) != 0L) {
							jjCheckNAdd(32);
						}
						break;
					case 34:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 33;
						}
						break;
					case 35:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 34;
						}
						break;
					case 37:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 36;
						}
						break;
					case 38:
						if ((0x10000000100000L & l) != 0L) {
							jjCheckNAdd(32);
						}
						break;
					case 39:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 38;
						}
						break;
					case 40:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 39;
						}
						break;
					case 41:
						if ((0x80000000800000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 40;
						}
						break;
					case 42:
						if ((0x80000000800000L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 43:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 42;
						}
						break;
					case 44:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 43;
						}
						break;
					case 45:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 44;
						}
						break;
					case 46:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 45;
						}
						break;
					case 47:
						if ((0x200000002000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 46;
						}
						break;
					case 67:
						if ((0x400000004000L & l) != 0L && kind > 72) {
							kind = 72;
						}
						break;
					case 68:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 67;
						}
						break;
					case 69:
						if ((0x1000000010L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 68;
						}
						break;
					case 70:
						if ((0x1000000010L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 69;
						}
						break;
					case 71:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 70;
						}
						break;
					case 72:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 71;
						}
						break;
					case 73:
						if ((0x1000000010L & l) != 0L) {
							jjAddStates(713, 715);
						}
						break;
					case 74:
						if ((0x1000000010L & l) != 0L && kind > 72) {
							kind = 72;
						}
						break;
					case 75:
					case 79:
						if ((0x2000000020L & l) != 0L) {
							jjCheckNAdd(74);
						}
						break;
					case 76:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 75;
						}
						break;
					case 77:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 76;
						}
						break;
					case 78:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 77;
						}
						break;
					case 80:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 79;
						}
						break;
					case 81:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 80;
						}
						break;
					case 82:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 81;
						}
						break;
					case 83:
						if ((0x2000000020L & l) != 0L && kind > 72) {
							kind = 72;
						}
						break;
					case 84:
						if ((0x100000001000L & l) != 0L) {
							jjCheckNAdd(83);
						}
						break;
					case 85:
						if ((0x400000004L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 84;
						}
						break;
					case 86:
						if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 85;
						}
						break;
					case 87:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 86;
						}
						break;
					case 88:
						if ((0x100000001000000L & l) != 0L) {
							jjAddStates(709, 712);
						}
						break;
					case 89:
						if ((0x100000001000L & l) != 0L && kind > 51) {
							kind = 51;
						}
						break;
					case 90:
					case 96:
						if ((0x100000001000L & l) != 0L) {
							jjCheckNAdd(89);
						}
						break;
					case 91:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 90;
						}
						break;
					case 92:
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 91;
						}
						break;
					case 93:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 92;
						}
						break;
					case 95:
						if ((0x100000001000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 94;
						}
						break;
					case 97:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 96;
						}
						break;
					case 98:
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 97;
						}
						break;
					case 99:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 98;
						}
						break;
					case 101:
						if ((0x2000000020L & l) != 0L && kind > 51) {
							kind = 51;
						}
						break;
					case 102:
					case 107:
					case 340:
						if ((0x8000000080L & l) != 0L) {
							jjCheckNAdd(101);
						}
						break;
					case 103:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 102;
						}
						break;
					case 104:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 103;
						}
						break;
					case 105:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 104;
						}
						break;
					case 108:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 107;
						}
						break;
					case 109:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 108;
						}
						break;
					case 110:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 109;
						}
						break;
					case 112:
						if ((0x100000001000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 111;
						}
						break;
					case 118:
						if ((0x10000000100000L & l) != 0L && kind > 43) {
							kind = 43;
						}
						break;
					case 119:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 118;
						}
						break;
					case 121:
						if ((0x200000002000L & l) != 0L && kind > 43) {
							kind = 43;
						}
						break;
					case 122:
						if ((0x200000002000L & l) != 0L) {
							jjCheckNAdd(121);
						}
						break;
					case 124:
						if ((0x800000008L & l) != 0L) {
							jjCheckNAdd(121);
						}
						break;
					case 126:
						if ((0x800000008L & l) != 0L && kind > 43) {
							kind = 43;
						}
						break;
					case 127:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 126;
						}
						break;
					case 129:
						if ((0x400000004000L & l) != 0L && kind > 43) {
							kind = 43;
						}
						break;
					case 130:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 129;
						}
						break;
					case 132:
						if ((0x1000000010L & l) != 0L && kind > 43) {
							kind = 43;
						}
						break;
					case 133:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 132;
						}
						break;
					case 135:
						if ((0x100000001000000L & l) != 0L && kind > 43) {
							kind = 43;
						}
						break;
					case 136:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 135;
						}
						break;
					case 138:
						if ((0x200000002000L & l) != 0L && kind > 44) {
							kind = 44;
						}
						break;
					case 139:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 138;
						}
						break;
					case 141:
						if ((0x100000001000000L & l) != 0L && kind > 45) {
							kind = 45;
						}
						break;
					case 142:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 141;
						}
						break;
					case 144:
						if ((0x8000000080L & l) != 0L && kind > 46) {
							kind = 46;
						}
						break;
					case 145:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 144;
						}
						break;
					case 146:
						if ((0x1000000010L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 145;
						}
						break;
					case 147:
						if ((0x1000000010L & l) != 0L && kind > 46) {
							kind = 46;
						}
						break;
					case 148:
					case 150:
						if ((0x200000002L & l) != 0L) {
							jjCheckNAdd(147);
						}
						break;
					case 149:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 148;
						}
						break;
					case 151:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 150;
						}
						break;
					case 152:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 151;
						}
						break;
					case 154:
					case 157:
						if ((0x8000000080000L & l) != 0L && kind > 47) {
							kind = 47;
						}
						break;
					case 155:
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 154;
						}
						break;
					case 159:
						if ((0x400000004000000L & l) != 0L && kind > 48) {
							kind = 48;
						}
						break;
					case 160:
					case 162:
						if ((0x10000000100L & l) != 0L) {
							jjCheckNAdd(159);
						}
						break;
					case 163:
						if ((0x80000000800L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 162;
						}
						break;
					case 165:
						if ((0x1000000010L & l) != 0L) {
							jjAddStates(734, 735);
						}
						break;
					case 166:
						if ((0x20000000200L & l) != 0L && kind > 49) {
							kind = 49;
						}
						break;
					case 167:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 166;
						}
						break;
					case 168:
						if ((0x200000002000L & l) != 0L && kind > 49) {
							kind = 49;
						}
						break;
					case 169:
						if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 168;
						}
						break;
					case 170:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 169;
						}
						break;
					case 185:
					case 186:
						if ((0x7fffffe87fffffeL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddTwoStates(186, 187);
						break;
					case 187:
						if (curChar == 92) {
							jjCheckNAddTwoStates(188, 189);
						}
						break;
					case 188:
						if ((0x7fffffffffffffffL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddTwoStates(186, 187);
						break;
					case 189:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(208, 211);
						break;
					case 191:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(212, 218);
						break;
					case 192:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(219, 221);
						break;
					case 193:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(222, 225);
						break;
					case 194:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(226, 230);
						break;
					case 195:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(231, 236);
						break;
					case 196:
						if (curChar == 92) {
							jjCheckNAddTwoStates(188, 197);
						}
						break;
					case 197:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(237, 240);
						break;
					case 198:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(241, 247);
						break;
					case 199:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(248, 250);
						break;
					case 200:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(251, 254);
						break;
					case 201:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(255, 259);
						break;
					case 202:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddStates(260, 265);
						break;
					case 203:
						if ((0x20000000200000L & l) != 0L) {
							jjAddStates(706, 708);
						}
						break;
					case 205:
					case 209:
						if ((0x7fffffffffffffffL & l) != 0L) {
							jjCheckNAddStates(272, 275);
						}
						break;
					case 208:
						if (curChar == 92) {
							jjAddStates(736, 737);
						}
						break;
					case 210:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(276, 280);
						}
						break;
					case 212:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(281, 288);
						}
						break;
					case 213:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(289, 292);
						}
						break;
					case 214:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(293, 297);
						}
						break;
					case 215:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(298, 303);
						}
						break;
					case 216:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(304, 310);
						}
						break;
					case 218:
					case 223:
						if ((0x7fffffffffffffffL & l) != 0L) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 220:
						if (curChar == 92) {
							jjAddStates(738, 739);
						}
						break;
					case 222:
						if (curChar == 92) {
							jjAddStates(740, 741);
						}
						break;
					case 224:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(315, 320);
						}
						break;
					case 226:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(321, 329);
						}
						break;
					case 227:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(330, 334);
						}
						break;
					case 228:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(335, 340);
						}
						break;
					case 229:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(341, 347);
						}
						break;
					case 230:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(348, 355);
						}
						break;
					case 233:
					case 238:
						if ((0x7fffffffffffffffL & l) != 0L) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 235:
						if (curChar == 92) {
							jjAddStates(742, 743);
						}
						break;
					case 237:
						if (curChar == 92) {
							jjAddStates(744, 745);
						}
						break;
					case 239:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(360, 365);
						}
						break;
					case 241:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(366, 374);
						}
						break;
					case 242:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(375, 379);
						}
						break;
					case 243:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(380, 385);
						}
						break;
					case 244:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(386, 392);
						}
						break;
					case 245:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(393, 400);
						}
						break;
					case 248:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 204;
						}
						break;
					case 249:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 248;
						}
						break;
					case 257:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjAddStates(417, 422);
						break;
					case 258:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 259;
						}
						break;
					case 259:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 260;
						}
						break;
					case 260:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAdd(261);
						}
						break;
					case 261:
						if ((0x7e0000007eL & l) != 0L && kind > 88) {
							kind = 88;
						}
						break;
					case 262:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 263;
						}
						break;
					case 263:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 264;
						}
						break;
					case 264:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 265;
						}
						break;
					case 265:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 253;
						break;
					case 266:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 267;
						}
						break;
					case 267:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 268;
						}
						break;
					case 268:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 269;
						break;
					case 270:
						if ((0x7e0000007eL & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 271;
						}
						break;
					case 271:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 272;
						break;
					case 274:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 275;
						break;
					case 283:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddTwoStates(284, 290);
						}
						break;
					case 285:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjstateSet[jjnewStateCnt++] = 286;
						break;
					case 286:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(433, 436);
						break;
					case 287:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAdd(261);
						break;
					case 288:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddTwoStates(261, 287);
						break;
					case 289:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 88) {
							kind = 88;
						}
						jjCheckNAddStates(437, 439);
						break;
					case 290:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(440, 444);
						}
						break;
					case 291:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAdd(284);
						}
						break;
					case 292:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddTwoStates(291, 284);
						}
						break;
					case 293:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(445, 447);
						}
						break;
					case 294:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(448, 451);
						}
						break;
					case 295:
						if ((0x8000000080000L & l) != 0L) {
							jjAddStates(719, 725);
						}
						break;
					case 299:
						if ((0x4000000040000L & l) != 0L && kind > 52) {
							kind = 52;
						}
						break;
					case 302:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 301;
						}
						break;
					case 303:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 302;
						}
						break;
					case 304:
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 303;
						}
						break;
					case 305:
						if ((0x4000000040000L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 306:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 305;
						}
						break;
					case 307:
						if ((0x40000000400000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 306;
						}
						break;
					case 308:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 307;
						}
						break;
					case 309:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 308;
						}
						break;
					case 310:
						if ((0x400000004000L & l) != 0L && kind > 57) {
							kind = 57;
						}
						break;
					case 311:
					case 438:
					case 449:
						if ((0x800000008000L & l) != 0L) {
							jjCheckNAdd(310);
						}
						break;
					case 312:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 311;
						}
						break;
					case 318:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 317;
						}
						break;
					case 319:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 318;
						}
						break;
					case 320:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 319;
						}
						break;
					case 321:
						if ((0x200000002000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 320;
						}
						break;
					case 322:
						if ((0x4000000040000L & l) != 0L && kind > 57) {
							kind = 57;
						}
						break;
					case 323:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 322;
						}
						break;
					case 324:
						if ((0x400000004L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 323;
						}
						break;
					case 326:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 325;
						}
						break;
					case 327:
						if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 326;
						}
						break;
					case 328:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 327;
						}
						break;
					case 329:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 328;
						}
						break;
					case 330:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 329;
						}
						break;
					case 331:
						if ((0x100000001000L & l) != 0L && kind > 63) {
							kind = 63;
						}
						break;
					case 332:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 331;
						}
						break;
					case 333:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 332;
						}
						break;
					case 334:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 333;
						}
						break;
					case 335:
						if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 334;
						}
						break;
					case 336:
						if ((0x20000000200L & l) != 0L) {
							jjCheckNAdd(74);
						}
						break;
					case 337:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 336;
						}
						break;
					case 338:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 337;
						}
						break;
					case 339:
						if ((0x100000001000L & l) != 0L) {
							jjAddStates(701, 705);
						}
						break;
					case 341:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 340;
						}
						break;
					case 342:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 341;
						}
						break;
					case 343:
						if ((0x2000000020L & l) != 0L) {
							jjCheckNAdd(299);
						}
						break;
					case 344:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 343;
						}
						break;
					case 345:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 344;
						}
						break;
					case 346:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 345;
						}
						break;
					case 347:
						if ((0x200000002000L & l) != 0L) {
							jjCheckNAdd(32);
						}
						break;
					case 348:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 347;
						}
						break;
					case 349:
						if ((0x4000000040000L & l) != 0L && kind > 60) {
							kind = 60;
						}
						break;
					case 350:
					case 516:
						if ((0x2000000020L & l) != 0L) {
							jjCheckNAdd(349);
						}
						break;
					case 351:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 350;
						}
						break;
					case 352:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 351;
						}
						break;
					case 353:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 352;
						}
						break;
					case 354:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 353;
						}
						break;
					case 355:
						if ((0x10000000100000L & l) != 0L && kind > 64) {
							kind = 64;
						}
						break;
					case 356:
						if ((0x4000000040L & l) != 0L) {
							jjCheckNAdd(355);
						}
						break;
					case 357:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 356;
						}
						break;
					case 358:
						if ((0x200000002L & l) != 0L) {
							jjAddStates(698, 700);
						}
						break;
					case 359:
						if ((0x1000000010L & l) != 0L && kind > 27) {
							kind = 27;
						}
						break;
					case 361:
						if ((0x400000004000L & l) != 0L) {
							jjCheckNAdd(359);
						}
						break;
					case 362:
						if ((0x200000002L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 363:
						if ((0x20000000200000L & l) != 0L) {
							jjCheckNAdd(362);
						}
						break;
					case 364:
						if ((0x2000000020000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 363;
						}
						break;
					case 365:
						if ((0x4000000040L & l) != 0L) {
							jjAddStates(696, 697);
						}
						break;
					case 366:
						if ((0x20000000200L & l) != 0L) {
							jjCheckNAdd(362);
						}
						break;
					case 367:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 366;
						}
						break;
					case 368:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 367;
						}
						break;
					case 369:
						if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 368;
						}
						break;
					case 371:
						if ((0x1000000010L & l) != 0L && kind > 63) {
							kind = 63;
						}
						break;
					case 372:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 371;
						}
						break;
					case 373:
						if ((0x100000001000000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 372;
						}
						break;
					case 374:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 373;
						}
						break;
					case 375:
						if ((0x200000002000L & l) != 0L) {
							jjAddStates(692, 695);
						}
						break;
					case 376:
						if ((0x400000004000L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 377:
						if ((0x800000008000L & l) != 0L) {
							jjCheckNAdd(376);
						}
						break;
					case 381:
						if ((0x20000000200000L & l) != 0L && kind > 57) {
							kind = 57;
						}
						break;
					case 382:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 381;
						}
						break;
					case 383:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 382;
						}
						break;
					case 384:
						if ((0x100000001000000L & l) != 0L && kind > 57) {
							kind = 57;
						}
						break;
					case 385:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 384;
						}
						break;
					case 386:
						if ((0x400000004L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 385;
						}
						break;
					case 388:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 387;
						}
						break;
					case 389:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 388;
						}
						break;
					case 390:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 389;
						}
						break;
					case 391:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 390;
						}
						break;
					case 392:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 391;
						}
						break;
					case 393:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 392;
						}
						break;
					case 394:
						if ((0x200000002000L & l) != 0L && kind > 73) {
							kind = 73;
						}
						break;
					case 395:
						if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 394;
						}
						break;
					case 396:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 395;
						}
						break;
					case 397:
						if ((0x1000000010L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 396;
						}
						break;
					case 398:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 397;
						}
						break;
					case 399:
						if ((0x400000004000L & l) != 0L) {
							jjAddStates(687, 691);
						}
						break;
					case 400:
						if ((0x10000000100000L & l) != 0L && kind > 28) {
							kind = 28;
						}
						break;
					case 402:
						if ((0x800000008000L & l) != 0L) {
							jjCheckNAdd(400);
						}
						break;
					case 403:
						if ((0x200000002000000L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 404:
						if ((0x40000000400000L & l) != 0L) {
							jjCheckNAdd(403);
						}
						break;
					case 405:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 404;
						}
						break;
					case 406:
						if ((0x10000000100000L & l) != 0L && kind > 62) {
							kind = 62;
						}
						break;
					case 407:
					case 535:
						if ((0x200000002L & l) != 0L) {
							jjCheckNAdd(406);
						}
						break;
					case 408:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 407;
						}
						break;
					case 409:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 408;
						}
						break;
					case 410:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 409;
						}
						break;
					case 411:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 410;
						}
						break;
					case 413:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 412;
						}
						break;
					case 414:
						if ((0x400000004000L & l) != 0L) {
							jjCheckNAdd(83);
						}
						break;
					case 415:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 414;
						}
						break;
					case 417:
						if ((0x7fffffe87fffffeL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddTwoStates(417, 418);
						break;
					case 418:
						if (curChar == 92) {
							jjAddStates(746, 747);
						}
						break;
					case 419:
						if ((0x7fffffffffffffffL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddTwoStates(417, 418);
						break;
					case 420:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(452, 455);
						break;
					case 422:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(456, 462);
						break;
					case 423:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(463, 465);
						break;
					case 424:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(466, 469);
						break;
					case 425:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(470, 474);
						break;
					case 426:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddStates(475, 480);
						break;
					case 427:
						if ((0x7fffffe87fffffeL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddTwoStates(427, 428);
						break;
					case 428:
						if (curChar == 92) {
							jjAddStates(748, 749);
						}
						break;
					case 429:
						if ((0x7fffffffffffffffL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddTwoStates(427, 428);
						break;
					case 430:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(481, 484);
						break;
					case 432:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(485, 491);
						break;
					case 433:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(492, 494);
						break;
					case 434:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(495, 498);
						break;
					case 435:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(499, 503);
						break;
					case 436:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddStates(504, 509);
						break;
					case 437:
						if ((0x800000008L & l) != 0L) {
							jjAddStates(685, 686);
						}
						break;
					case 439:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 438;
						}
						break;
					case 440:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 439;
						}
						break;
					case 441:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 440;
						}
						break;
					case 442:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 441;
						}
						break;
					case 443:
						if ((0x4000000040000L & l) != 0L && kind > 64) {
							kind = 64;
						}
						break;
					case 444:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 443;
						}
						break;
					case 445:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 444;
						}
						break;
					case 446:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 445;
						}
						break;
					case 447:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 446;
						}
						break;
					case 448:
						if ((0x20000000200L & l) != 0L) {
							jjAddStates(716, 718);
						}
						break;
					case 451:
						if ((0x800000008L & l) != 0L && kind > 58) {
							kind = 58;
						}
						break;
					case 452:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 451;
						}
						break;
					case 453:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 452;
						}
						break;
					case 454:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 453;
						}
						break;
					case 455:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 454;
						}
						break;
					case 456:
						if ((0x10000000100000L & l) != 0L && kind > 72) {
							kind = 72;
						}
						break;
					case 457:
					case 479:
						if ((0x2000000020L & l) != 0L) {
							jjCheckNAdd(456);
						}
						break;
					case 459:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 458;
						}
						break;
					case 460:
						if ((0x800000008000L & l) != 0L) {
							jjAddStates(679, 684);
						}
						break;
					case 461:
						if ((0x200000002000000L & l) != 0L && kind > 28) {
							kind = 28;
						}
						break;
					case 462:
					case 464:
						if ((0x100000001000L & l) != 0L) {
							jjCheckNAdd(461);
						}
						break;
					case 463:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 462;
						}
						break;
					case 465:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 464;
						}
						break;
					case 466:
						if ((0x40000000400000L & l) != 0L) {
							jjCheckNAdd(32);
						}
						break;
					case 467:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 466;
						}
						break;
					case 468:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 467;
						}
						break;
					case 469:
						if ((0x8000000080L & l) != 0L) {
							jjCheckNAdd(32);
						}
						break;
					case 470:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 469;
						}
						break;
					case 471:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 470;
						}
						break;
					case 472:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 471;
						}
						break;
					case 473:
						if ((0x2000000020L & l) != 0L && kind > 58) {
							kind = 58;
						}
						break;
					case 474:
						if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 473;
						}
						break;
					case 475:
						if ((0x2000000020000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 474;
						}
						break;
					case 476:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 475;
						}
						break;
					case 477:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 476;
						}
						break;
					case 478:
						if ((0x400000004L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 477;
						}
						break;
					case 480:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 479;
						}
						break;
					case 481:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 480;
						}
						break;
					case 482:
						if ((0x20000000200000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 481;
						}
						break;
					case 483:
						if ((0x10000000100000L & l) != 0L) {
							jjAddStates(674, 678);
						}
						break;
					case 484:
						if ((0x10000000100000L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 485:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 484;
						}
						break;
					case 486:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 485;
						}
						break;
					case 487:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 486;
						}
						break;
					case 488:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 487;
						}
						break;
					case 489:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 488;
						}
						break;
					case 490:
						if ((0x8000000080000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 489;
						}
						break;
					case 491:
						if ((0x400000004000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 490;
						}
						break;
					case 492:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 491;
						}
						break;
					case 493:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 492;
						}
						break;
					case 494:
						if ((0x100000001000L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 495:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 494;
						}
						break;
					case 496:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 495;
						}
						break;
					case 497:
						if ((0x1000000010000L & l) != 0L && kind > 64) {
							kind = 64;
						}
						break;
					case 498:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 497;
						}
						break;
					case 499:
						if ((0x400000004000L & l) != 0L && kind > 73) {
							kind = 73;
						}
						break;
					case 500:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 499;
						}
						break;
					case 501:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 500;
						}
						break;
					case 502:
						if ((0x80000000800L & l) != 0L && kind > 73) {
							kind = 73;
						}
						break;
					case 503:
						if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 502;
						}
						break;
					case 504:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 503;
						}
						break;
					case 505:
						if ((0x10000000100L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 504;
						}
						break;
					case 506:
						if ((0x400000004L & l) != 0L) {
							jjAddStates(669, 673);
						}
						break;
					case 507:
						if ((0x80000000800L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 508:
						if ((0x800000008L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 507;
						}
						break;
					case 509:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 508;
						}
						break;
					case 511:
						if ((0x20000000200000L & l) != 0L) {
							jjCheckNAdd(32);
						}
						break;
					case 512:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 511;
						}
						break;
					case 513:
						if ((0x1000000010L & l) != 0L && kind > 60) {
							kind = 60;
						}
						break;
					case 515:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 514;
						}
						break;
					case 517:
						if ((0x1000000010L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 516;
						}
						break;
					case 518:
						if ((0x100000001000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 517;
						}
						break;
					case 519:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 518;
						}
						break;
					case 520:
						if ((0x200000002000L & l) != 0L && kind > 64) {
							kind = 64;
						}
						break;
					case 521:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 520;
						}
						break;
					case 522:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 521;
						}
						break;
					case 523:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 522;
						}
						break;
					case 524:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 523;
						}
						break;
					case 525:
						if ((0x4000000040000L & l) != 0L) {
							jjAddStates(662, 668);
						}
						break;
					case 526:
						if ((0x1000000010L & l) != 0L && kind > 53) {
							kind = 53;
						}
						break;
					case 527:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 526;
						}
						break;
					case 528:
						if ((0x400000004L & l) != 0L) {
							jjAddStates(510, 511);
						}
						break;
					case 531:
						jjAddStates(512, 514);
						break;
					case 534:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 528;
						}
						break;
					case 536:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 535;
						}
						break;
					case 537:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 536;
						}
						break;
					case 538:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 537;
						}
						break;
					case 539:
						if ((0x100000001000000L & l) != 0L && kind > 62) {
							kind = 62;
						}
						break;
					case 541:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 540;
						}
						break;
					case 542:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 541;
						}
						break;
					case 543:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 542;
						}
						break;
					case 544:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 543;
						}
						break;
					case 545:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 544;
						}
						break;
					case 546:
						if ((0x200000002000000L & l) != 0L && kind > 62) {
							kind = 62;
						}
						break;
					case 548:
						if ((0x10000000100000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 547;
						}
						break;
					case 549:
						if ((0x200000002L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 548;
						}
						break;
					case 550:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 549;
						}
						break;
					case 551:
						if ((0x1000000010000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 550;
						}
						break;
					case 552:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 551;
						}
						break;
					case 553:
						if ((0x10000000100L & l) != 0L) {
							jjCheckNAdd(355);
						}
						break;
					case 554:
						if ((0x8000000080L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 553;
						}
						break;
					case 555:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 554;
						}
						break;
					case 556:
						if ((0x8000000080L & l) != 0L) {
							jjCheckNAdd(83);
						}
						break;
					case 557:
						if ((0x1000000010L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 556;
						}
						break;
					case 558:
						if ((0x20000000200L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 557;
						}
						break;
					case 559:
						if ((0x8000000080L & l) != 0L) {
							jjAddStates(659, 661);
						}
						break;
					case 560:
						if ((0x200000002L & l) != 0L) {
							jjCheckNAdd(403);
						}
						break;
					case 561:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 560;
						}
						break;
					case 562:
						if ((0x2000000020L & l) != 0L) {
							jjCheckNAdd(376);
						}
						break;
					case 563:
						if ((0x2000000020L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 562;
						}
						break;
					case 564:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 563;
						}
						break;
					case 565:
						if ((0x40000000400000L & l) != 0L) {
							jjCheckNAdd(83);
						}
						break;
					case 566:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 565;
						}
						break;
					case 567:
						if ((0x800000008000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 566;
						}
						break;
					case 568:
						if ((0x4000000040000L & l) != 0L) {
							jjstateSet[jjnewStateCnt++] = 567;
						}
						break;
					case 569:
						if ((0x7fffffe87fffffeL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(650, 654);
						break;
					case 570:
						if ((0x7fffffe87fffffeL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddTwoStates(570, 571);
						break;
					case 571:
						if (curChar == 92) {
							jjCheckNAddTwoStates(572, 573);
						}
						break;
					case 572:
						if ((0x7fffffffffffffffL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddTwoStates(570, 571);
						break;
					case 573:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(515, 518);
						break;
					case 575:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(519, 525);
						break;
					case 576:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(526, 528);
						break;
					case 577:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(529, 532);
						break;
					case 578:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(533, 537);
						break;
					case 579:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(538, 543);
						break;
					case 580:
						if ((0x7fffffe87fffffeL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 582:
						if (curChar == 92) {
							jjCheckNAddTwoStates(583, 584);
						}
						break;
					case 583:
						if ((0x7fffffffffffffffL & l) != 0L) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 584:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(544, 548);
						}
						break;
					case 586:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(549, 556);
						}
						break;
					case 587:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(557, 560);
						}
						break;
					case 588:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(561, 565);
						}
						break;
					case 589:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(566, 571);
						}
						break;
					case 590:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(572, 578);
						}
						break;
					case 591:
						if (curChar == 92) {
							jjCheckNAddStates(655, 658);
						}
						break;
					case 592:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(579, 582);
						break;
					case 593:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(583, 589);
						break;
					case 594:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(590, 592);
						break;
					case 595:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(593, 596);
						break;
					case 596:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(597, 601);
						break;
					case 597:
						if ((0x7e0000007eL & l) == 0L) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(602, 607);
						break;
					case 598:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(608, 612);
						}
						break;
					case 599:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(613, 620);
						}
						break;
					case 600:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(621, 624);
						}
						break;
					case 601:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(625, 629);
						}
						break;
					case 602:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(630, 635);
						}
						break;
					case 603:
						if ((0x7e0000007eL & l) != 0L) {
							jjCheckNAddStates(636, 642);
						}
						break;
					default:
						break;
					}
				} while (i != startsAt);
			} else {
				int hiByte = (int) (curChar >> 8);
				int i1 = hiByte >> 6;
				long l1 = 1L << (hiByte & 077);
				int i2 = (curChar & 0xff) >> 6;
				long l2 = 1L << (curChar & 077);
				// MatchLoop: do
				do {
					switch (jjstateSet[--i]) {
					case 36:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 315:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 458:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 379:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 298:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 450:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 412:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 313:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 370:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 316:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 360:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 296:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 380:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 510:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 297:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 514:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 300:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 314:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 301:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 1:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 29) {
								kind = 29;
							}
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddStates(650, 654);
						}
						break;
					case 401:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 663:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 378:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							if (kind > 76) {
								kind = 76;
							}
							jjCheckNAddTwoStates(570, 571);
						}
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					case 3:
					case 8:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(115, 118);
						}
						break;
					case 18:
					case 23:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(111, 114);
						}
						break;
					case 185:
					case 186:
					case 188:
						if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							break;
						}
						if (kind > 77) {
							kind = 77;
						}
						jjCheckNAddTwoStates(186, 187);
						break;
					case 205:
					case 209:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(272, 275);
						}
						break;
					case 218:
					case 223:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(311, 314);
						}
						break;
					case 233:
					case 238:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(356, 359);
						}
						break;
					case 417:
					case 419:
						if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							break;
						}
						if (kind > 53) {
							kind = 53;
						}
						jjCheckNAddTwoStates(417, 418);
						break;
					case 427:
					case 429:
						if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							break;
						}
						if (kind > 78) {
							kind = 78;
						}
						jjCheckNAddTwoStates(427, 428);
						break;
					case 531:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjAddStates(512, 514);
						}
						break;
					case 569:
						if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddStates(650, 654);
						break;
					case 570:
					case 572:
						if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							break;
						}
						if (kind > 76) {
							kind = 76;
						}
						jjCheckNAddTwoStates(570, 571);
						break;
					case 580:
					case 583:
						if (jjCanMove_0(hiByte, i1, i2, l1, l2)) {
							jjCheckNAddStates(0, 2);
						}
						break;
					default:
						break;
					}
				} while (i != startsAt);
			}
			if (kind != 0x7fffffff) {
				jjmatchedKind = kind;
				jjmatchedPos = curPos;
				kind = 0x7fffffff;
			}
			++curPos;
			i = jjnewStateCnt;
			if (i == (startsAt = 662 - (jjnewStateCnt = startsAt))) {
				return curPos;
			}
			try {
				curChar = input_stream.readChar();
			} catch (java.io.IOException e) {
				return curPos;
			}
		}
	}

	private final int jjMoveStringLiteralDfa0_1() {
		return 1;
	}

	static final int[] jjnextStates = { 580, 581, 582, 184, 185, 196, 143, 146, 149, 152, 605, 606, 607, 608, 609, 610,
			116, 611, 612, 613, 119, 614, 615, 616, 122, 617, 618, 619, 124, 620, 621, 622, 127, 623, 624, 625, 130,
			626, 627, 628, 133, 629, 630, 631, 136, 632, 633, 634, 139, 635, 636, 637, 142, 638, 639, 640, 146, 149,
			152, 641, 642, 643, 155, 644, 645, 646, 157, 647, 648, 649, 160, 650, 651, 652, 163, 653, 654, 655, 656,
			657, 658, 172, 659, 660, 661, 185, 196, 165, 417, 427, 428, 418, 114, 115, 117, 120, 123, 125, 128, 131,
			134, 137, 140, 143, 153, 156, 158, 161, 164, 171, 184, 18, 19, 20, 22, 3, 4, 5, 7, 3, 10, 4, 5, 7, 11, 3,
			12, 10, 4, 5, 7, 13, 14, 15, 3, 10, 4, 5, 7, 3, 12, 10, 4, 5, 7, 3, 12, 10, 4, 5, 7, 13, 3, 12, 10, 4, 5, 7,
			13, 14, 18, 25, 19, 20, 22, 26, 18, 27, 25, 19, 20, 22, 28, 29, 30, 18, 25, 19, 20, 22, 18, 27, 25, 19, 20,
			22, 18, 27, 25, 19, 20, 22, 28, 18, 27, 25, 19, 20, 22, 28, 29, 179, 180, 176, 182, 183, 173, 175, 186, 190,
			187, 191, 186, 192, 190, 187, 193, 194, 195, 186, 190, 187, 186, 192, 190, 187, 186, 192, 190, 187, 193,
			186, 192, 190, 187, 193, 194, 190, 186, 187, 198, 199, 190, 186, 187, 200, 201, 202, 190, 186, 187, 199,
			190, 186, 187, 199, 190, 186, 187, 200, 199, 190, 186, 187, 200, 201, 205, 217, 232, 207, 208, 247, 205,
			206, 207, 208, 205, 207, 208, 211, 212, 205, 213, 207, 208, 211, 214, 215, 216, 205, 207, 208, 211, 205,
			213, 207, 208, 211, 205, 213, 207, 208, 211, 214, 205, 213, 207, 208, 211, 214, 215, 218, 219, 220, 222,
			218, 225, 219, 220, 222, 226, 218, 227, 225, 219, 220, 222, 228, 229, 230, 218, 225, 219, 220, 222, 218,
			227, 225, 219, 220, 222, 218, 227, 225, 219, 220, 222, 228, 218, 227, 225, 219, 220, 222, 228, 229, 233,
			234, 235, 237, 233, 240, 234, 235, 237, 241, 233, 242, 240, 234, 235, 237, 243, 244, 245, 233, 240, 234,
			235, 237, 233, 242, 240, 234, 235, 237, 233, 242, 240, 234, 235, 237, 243, 233, 242, 240, 234, 235, 237,
			243, 244, 205, 217, 232, 206, 207, 208, 247, 251, 257, 253, 254, 255, 256, 253, 254, 255, 258, 262, 266,
			270, 274, 278, 253, 276, 277, 253, 279, 280, 281, 253, 279, 280, 261, 287, 288, 289, 261, 287, 288, 291,
			284, 292, 293, 294, 291, 284, 292, 291, 284, 292, 293, 417, 421, 418, 422, 417, 423, 421, 418, 424, 425,
			426, 417, 421, 418, 417, 423, 421, 418, 417, 423, 421, 418, 424, 417, 423, 421, 418, 424, 425, 427, 431,
			428, 432, 427, 433, 431, 428, 434, 435, 436, 427, 431, 428, 427, 433, 431, 428, 427, 433, 431, 428, 434,
			427, 433, 431, 428, 434, 435, 529, 530, 531, 532, 533, 570, 574, 571, 575, 570, 576, 574, 571, 577, 578,
			579, 570, 574, 571, 570, 576, 574, 571, 570, 576, 574, 571, 577, 570, 576, 574, 571, 577, 578, 580, 585,
			581, 582, 586, 580, 587, 585, 581, 582, 588, 589, 590, 580, 585, 581, 582, 580, 587, 585, 581, 582, 580,
			587, 585, 581, 582, 588, 580, 587, 585, 581, 582, 588, 589, 574, 570, 571, 593, 594, 574, 570, 571, 595,
			596, 597, 574, 570, 571, 594, 574, 570, 571, 594, 574, 570, 571, 595, 594, 574, 570, 571, 595, 596, 585,
			580, 581, 582, 599, 600, 585, 580, 581, 582, 601, 602, 603, 585, 580, 581, 582, 600, 585, 580, 581, 582,
			600, 585, 580, 581, 582, 601, 600, 585, 580, 581, 582, 601, 602, 638, 146, 149, 152, 659, 185, 196, 570,
			580, 581, 582, 571, 572, 592, 583, 598, 561, 564, 568, 527, 534, 538, 545, 552, 555, 558, 510, 512, 515,
			519, 524, 493, 496, 498, 501, 505, 463, 465, 468, 472, 478, 482, 442, 447, 401, 402, 405, 413, 415, 380,
			383, 393, 398, 370, 374, 360, 361, 364, 342, 346, 348, 354, 357, 249, 250, 282, 95, 100, 106, 112, 78, 82,
			87, 450, 455, 459, 298, 304, 309, 321, 330, 335, 338, 16, 6, 8, 9, 31, 21, 23, 24, 167, 170, 209, 210, 231,
			221, 223, 224, 246, 236, 238, 239, 419, 420, 429, 430, };

	private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2) {
		switch (hiByte) {
		case 0:
			return ((jjbitVec2[i2] & l2) != 0L);
		default:
			if ((jjbitVec0[i1] & l1) != 0L) {
				return true;
			}
			return false;
		}
	}

	public static final String[] jjstrLiteralImages = { "", null, null, //$NON-NLS-1$
			"\74\41\55\55", "\55\55\76", "\173", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
			"\175", "\174\75", //$NON-NLS-1$ //$NON-NLS-2$
			"\176\75", "\136\75", //$NON-NLS-1$ //$NON-NLS-2$
			"\44\75", "\52\75", "\176", //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
			"\75", "\53", "\55", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
			"\54", "\73", //$NON-NLS-1$ //$NON-NLS-2$
			"\76", "\57", //$NON-NLS-1$ //$NON-NLS-2$
			"\133", "\135", //$NON-NLS-1$ //$NON-NLS-2$
			"\52", "\56", //$NON-NLS-1$//$NON-NLS-2$
			"\51", "\50", //$NON-NLS-1$ //$NON-NLS-2$
			"\72", null, null, null, //$NON-NLS-1$
			null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
			null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
			null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
			null, null, null, null, null, null, null, };
	public static final String[] lexStateNames = { "DEFAULT", //$NON-NLS-1$
			"IN_COMMENT", //$NON-NLS-1$
	};
	public static final int[] jjnewLexState = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, };
	static final long[] jjtoToken = { 0xfffffec03ffffff9L, 0x7007fffL, };
	static final long[] jjtoSkip = { 0x6L, 0x0L, };
	protected SimpleCharStream input_stream;
	private final int[] jjrounds = new int[662];
	private final int[] jjstateSet = new int[1324];
	protected char curChar;

	public CssParserTokenManager(SimpleCharStream stream) {
		if (SimpleCharStream.staticFlag) {
			throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer."); //$NON-NLS-1$
		}
		input_stream = stream;
	}

	public CssParserTokenManager(SimpleCharStream stream, int lexState) {
		this(stream);
		SwitchTo(lexState);
	}

	public void ReInit(SimpleCharStream stream) {
		jjmatchedPos = jjnewStateCnt = 0;
		curLexState = defaultLexState;
		input_stream = stream;
		ReInitRounds();
	}

	private final void ReInitRounds() {
		int i;
		jjround = 0x80000001;
		for (i = 662; i-- > 0;) {
			jjrounds[i] = 0x80000000;
		}
	}

	public void ReInit(SimpleCharStream stream, int lexState) {
		ReInit(stream);
		SwitchTo(lexState);
	}

	public void SwitchTo(int lexState) {
		if (lexState >= 2 || lexState < 0) {
			throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", //$NON-NLS-1$ //$NON-NLS-2$
					TokenMgrError.INVALID_LEXICAL_STATE);
		} else {
			curLexState = lexState;
		}
	}

	protected Token jjFillToken() {
		Token t = Token.newToken(jjmatchedKind);
		t.kind = jjmatchedKind;
		String im = jjstrLiteralImages[jjmatchedKind];
		t.image = (im == null) ? input_stream.GetImage() : im;
		t.beginLine = input_stream.getBeginLine();
		t.beginColumn = input_stream.getBeginColumn();
		t.endLine = input_stream.getEndLine();
		t.endColumn = input_stream.getEndColumn();
		return t;
	}

	int curLexState = 0;
	int defaultLexState = 0;
	int jjnewStateCnt;
	int jjround;
	int jjmatchedPos;
	int jjmatchedKind;

	public Token getNextToken() {
		// int kind;
		// Token specialToken = null;
		Token matchedToken;
		int curPos = 0;

		EOFLoop: for (;;) {
			try {
				curChar = input_stream.BeginToken();
			} catch (java.io.IOException e) {
				jjmatchedKind = 0;
				matchedToken = jjFillToken();
				return matchedToken;
			}

			switch (curLexState) {
			case 0:
				jjmatchedKind = 0x7fffffff;
				jjmatchedPos = 0;
				curPos = jjMoveStringLiteralDfa0_0();
				if (jjmatchedPos == 0 && jjmatchedKind > 90) {
					jjmatchedKind = 90;
				}
				break;
			case 1:
				jjmatchedKind = 0x7fffffff;
				jjmatchedPos = 0;
				curPos = jjMoveStringLiteralDfa0_1();
				if (jjmatchedPos == 0 && jjmatchedKind > 90) {
					jjmatchedKind = 90;
				}
				break;
			}
			if (jjmatchedKind != 0x7fffffff) {
				if (jjmatchedPos + 1 < curPos) {
					input_stream.backup(curPos - jjmatchedPos - 1);
				}
				if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) {
					matchedToken = jjFillToken();
					if (jjnewLexState[jjmatchedKind] != -1) {
						curLexState = jjnewLexState[jjmatchedKind];
					}
					return matchedToken;
				} else {
					if (jjnewLexState[jjmatchedKind] != -1) {
						curLexState = jjnewLexState[jjmatchedKind];
					}
					continue EOFLoop;
				}
			}
			int error_line = input_stream.getEndLine();
			int error_column = input_stream.getEndColumn();
			String error_after = null;
			boolean EOFSeen = false;
			try {
				input_stream.readChar();
				input_stream.backup(1);
			} catch (java.io.IOException e1) {
				EOFSeen = true;
				error_after = curPos <= 1 ? "" : input_stream.GetImage(); //$NON-NLS-1$
				if (curChar == '\n' || curChar == '\r') {
					error_line++;
					error_column = 0;
				} else {
					error_column++;
				}
			}
			if (!EOFSeen) {
				input_stream.backup(1);
				error_after = curPos <= 1 ? "" : input_stream.GetImage(); //$NON-NLS-1$
			}
			throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar,
					TokenMgrError.LEXICAL_ERROR);
		}
	}

}
